The present disclosure generally relates to large-scale analytical data processing. Such data processing has become widespread in web companies and across industries. Distributed data processing systems need a mechanism to reliably repartition data in order to perform operations such as distributed joins and aggregations.